PROGRAM MAPS
USE POLYMORPHIC_COMPLEXTAYLOR
TYPE(DAMAP) ROT,SEXT,TOTAL_MAP
TYPE(GMAP) ROTg,SEXTg,TOTAL_MAPg
REAL(DP) ANGLE,KICK_STRENGTH
type(taylor) t
TYPE(REAL_8) Y,X1,X2

CALL INIT(NO1=2,ND1=1,NP1=0,NDPT1 =0)     !   <------------------ init for maps in ND1 degrees of freedom

CALL ALLOC(ROT,SEXT,TOTAL_MAP)
call alloc(ROTg,SEXTg,TOTAL_MAPg)
CALL ALLOC(Y,X1,X2)
call alloc(t)

ANGLE=30.0_DP * PI/180.0_DP

1 WRITE(6,*) " ANGLE "
READ(5,*) ANGLE

Y=ANGLE+(1.D0.MONO.'1')



ROT%V(1)= (COS(ANGLE).MONO.'10') + (SIN(ANGLE).MONO.'01') -1.d0
ROT%V(2)= (COS(ANGLE).MONO.'01') - (SIN(ANGLE).MONO.'10') -1.d0
ROTg%V(1)= ROT%V(1)
ROTg%V(2)= ROT%V(1)

KICK_STRENGTH=3.0_DP

SEXT%V(1)= (1.0_DP.MONO.'10') +.01d0
SEXT%V(2)= (1.0_DP.MONO.'01') + (KICK_STRENGTH.MONO.'20') +.01d0
SEXTg%V(1)= SEXT%V(1)
SEXTg%V(2)= SEXT%V(2)

CALL PRINT(ROT,6)
CALL PRINT(SEXT,6)

TOTAL_MAP=SEXT*ROT   ! <---- * PERFORMS A DA-CONCATENATION OF TWO DAMAPS
TOTAL_MAPg=SEXTg*ROTg   ! <---- * PERFORMS A DA-CONCATENATION OF TWO GMAPS

CALL PRINT(TOTAL_MAP,6)
CALL PRINT(TOTAL_MAPg,6)
pause

t=4.d0+(1d0.mono.'11') 

t=t.o.total_map
CALL PRINT(t,6)

t=4.d0+(1d0.mono.'11') 

t=t.o.total_mapg
CALL PRINT(t,6)
pause 1

t=4.d0+(1d0.mono.'11') 

t=t*total_map
CALL PRINT(t,6)

t=4.d0+(1d0.mono.'11') 

t=t*total_mapg
CALL PRINT(t,6)
pause 2

SEXT=total_map**(-1)


CALL KILL(ROT,SEXT,TOTAL_MAP)

END PROGRAM MAPS

